export interface OrderQuery extends PageQuery {
  orderNo?: string;
  userId?: number;
  deviceId?: number;
  status?: number;
  payType?: number;
  [key: string]: any;
}

export interface OrderDetail {
  id: number;
  orderId: number;
  orderNo: string;
  productId: number;
  productName: string;
  productImage: string;
  price: number;
  quantity: number;
  subtotal: number;
  channelNo: string;
  channelPosition: string;
  status: number;
  createTime: string;
  updateTime: string;
}

export interface OrderVO {
  id: number;
  orderNo: string;
  userId: number;
  deviceId: number;
  totalAmount: number;
  actualAmount: number;
  discountAmount: number;
  payType: number;
  payTime: string;
  status: number;
  outTradeNo: string;
  completeTime: string;
  cancelTime: string;
  cancelReason: string;
  remark: string;
  createTime: string;
  updateTime: string;
  orderDetail?: OrderDetail;
}

export interface OrderForm {
  id?: number;
  orderNo?: string;
  userId?: number;
  deviceId?: number;
  totalAmount?: number;
  actualAmount?: number;
  discountAmount?: number;
  payType?: number;
  status?: number;
  outTradeNo?: string;
  cancelReason?: string;
  remark?: string;
  createTime?: string;
  updateTime?: string;
  payTime?: string;
  completeTime?: string;
  cancelTime?: string;
  orderDetail?: OrderDetail;
}
